/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package dao;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import model.StContratacaoPessoal;

/**
 * Document   : StContratacaoPessoal
 * 
 * Created on : 01/03/2013, 14:02:52 
 * 
 * Author     : Fiúza <rbfiuza@gmail.com>
 */ 

public class StContratacaoPessoalDAO {


    Connection conn = null;
    PreparedStatement stmt = null;
    String sql = null;

    public ArrayList<StContratacaoPessoal> getContratacaoPessoal() {
        ArrayList<StContratacaoPessoal> stContratacaoPessoalList = new ArrayList<StContratacaoPessoal>();

        try {
            Class.forName("com.mysql.jdbc.Driver");
            Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "mysql");

            sql = "Select"
                    + " id"
                    + ",dsc_contratacao_pessoal"
                    + ",qnt_pessoas"
                    + ",qnt_meses"                    
                    + ",qnt_total"
                    + ",vlr_unit"
                    + ",vlr_final"
                    + ",indicacoes_parametros"
                + " from stcontratacaopessoal where 1  = ?";

            stmt = conn.prepareStatement(sql);
            stmt.setInt(1, 1);

            ResultSet rs = stmt.executeQuery();

            while (rs.next()) {

                StContratacaoPessoal stContratacaoPessoal = new StContratacaoPessoal();
                stContratacaoPessoal.setId(rs.getInt("id"));
                stContratacaoPessoal.setDscContratacaoPessoal(rs.getString("dsc_contratacao_pessoal"));
                stContratacaoPessoal.setQntPessoas(rs.getInt("qnt_pessoas"));
                stContratacaoPessoal.setQntMeses(rs.getInt("qnt_meses"));
                stContratacaoPessoal.setQntTotal(rs.getFloat("qnt_total"));
                stContratacaoPessoal.setVlrUnit(rs.getFloat("vlr_unit"));
                stContratacaoPessoal.setVlrFinal(rs.getFloat("vlr_final"));
                stContratacaoPessoal.setIndicacoesParametros(rs.getString("indicacoes_parametros"));
                
                stContratacaoPessoalList.add(stContratacaoPessoal);
            }

            rs.close();
            stmt.close();
            stmt = null;


            conn.close();
            conn = null;

        } catch (Exception e) {
            System.out.println(e);
        } finally {

            if (stmt != null) {
                try {
                    stmt.close();
                } catch (SQLException sqlex) {
                    // ignore -- as we can't do anything about it here           
                }

                stmt = null;
            }

            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException sqlex) {
                    // ignore -- as we can't do anything about it here     
                }

                conn = null;
            }
        }

        return stContratacaoPessoalList;
    }

    public String insertContratacaoPessoal() {
        String userId = null;

        return userId;
    }

    public boolean updateContratacaoPessoal(String storeId, StContratacaoPessoal stContratacaoPessoal) {
        boolean success = true;

        try {

            Class.forName("com.mysql.jdbc.Driver");
            Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "mysql");
            
//            sql = "UPDATE stcontratacaopessoal SET "
//                    + "id= ?"
//                    + ",dsc_contratacao_pessoal= ?"
//                    + ",qnt_pessoas= ?"
//                    + ",qnt_meses= ?"
//                    + ",qnt_total= ?"
//                    + ",vlr_unit= ?"
//                    + ",vlr_final= ?"
//                    + ",indicacoes_parametros= ?"
//                    + " WHERE id = ?";
            
            sql = "UPDATE stcontratacaopessoal SET "
                    + "id = ?"
                    + ",dsc_contratacao_pessoal = ?"
                    + ",qnt_pessoas = ?"
                    + ",qnt_meses = ?"
                    + ",qnt_total = ?"
                    + ",vlr_unit = ?"
                    + ",vlr_final = ?"
                    + ",indicacoes_parametros = ? "
                    + " WHERE id = ?";
            
            stmt = conn.prepareStatement(sql);
            stmt.setInt(1, stContratacaoPessoal.getId());
            stmt.setString(2, stContratacaoPessoal.getDscContratacaoPessoal());
            stmt.setInt(3, stContratacaoPessoal.getQntPessoas());
            stmt.setInt(4, stContratacaoPessoal.getQntMeses());
            stmt.setFloat(5, stContratacaoPessoal.getQntTotal());
            stmt.setFloat(6, stContratacaoPessoal.getVlrUnit());
            stmt.setFloat(7, stContratacaoPessoal.getVlrFinal());
            stmt.setString(8, stContratacaoPessoal.getIndicacoesParametros());
            stmt.setInt(9, stContratacaoPessoal.getId());

            stmt.executeUpdate();

            stmt.close();
            stmt = null;
            conn.close();
            conn = null;

        } catch (Exception e) {

            success = false;
            System.out.println(e);

        } finally {

            if (stmt != null) {
                try {
                    stmt.close();
                } catch (SQLException sqlex) {
                    // ignore -- as we can't do anything about it here           
                }

                stmt = null;
            }

            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException sqlex) {
                    // ignore -- as we can't do anything about it here     
                }

                conn = null;
            }
        }

        return success;
    }
}